The EDVAC computer system of 1948 is cited by many as the dawn of the computer era. Like modern day computer systems, the EDVAC computer system included an operating system that controlled the computer system's computer programs and a mechanism that allowed users to interact with those computer programs. However, while the EDVAC device was used primarily by scientists and other technical experts, modern day computer systems, such as the IBM Personal System/2, are used by a wide range of individuals with varying skills and backgrounds. The extensive use of today's computer systems is due in large part to improvements in the mechanisms which allow computer system users to interact with the computer system's computer programs (sometimes called the computer system's "user interface"). In fact, the relative ease of use between competitive computer systems is a significant factor in consumer purchase decisions. It is no surprise, then, that computer system makers are constantly striving to improve the ease of use of their respective computer systems.
One of the foremost advances in this ease of use endeavor has been the design of windowing mechanisms. A windowing mechanism splits a computer system's user interface into one or more windows. IBM OS/2 and Microsoft Windows are examples of computer system operating systems which feature a window oriented user interface. Most operating systems create a window each time a computer program (e.g., a word processor such as Microsoft Word for Windows) is started. The user then interacts with the computer program through its associated window. Of course, since many operating systems allow users to run several computer programs at once, users can have access to several windows simultaneously. While this aspect of some windowing mechanisms does potentially yield increased user productivity, it also sometimes requires the user to manipulate the windows (i.e., move them around, change their size and so forth) in order to gain access to different computer programs.
Windowing mechanisms typically include at least one submechanism that allows the user to move windows about the display screen of their computer system, change the size of individual windows, and minimize windows into what are called icons. Many of these submechanisms utilize a mouse or other pointing device to perform these operations. In common computer jargon, some operating systems allow their users to move viewable objects (e.g., windows and/or icons) by using a pointing device to perform what is often called a "drag and drop" operation. Pointing devices typically have cursors that appear on the user's display screen and highlight movement of the pointing device.
When a user wants to move a viewable object from location A to location B, he or she typically moves the cursor of the pointing device to the viewable object to be moved (e.g., at location A), pushes a button on the pointing device, moves the cursor to location B (i.e., "drags" the object to location B), and either pushes the button on the pointing device again or releases the button having held the button down through the whole operation (i.e., "drops" the object).
Like movement submechanisms, resizing submechanisms often entail use of a pointing device and its buttons to effectuate the resizing operation. For example, many submechanisms allow the user to resize a viewable object (usually a window) by moving the cursor to an edge of a window, pushing a button on the pointing device, moving the cursor to a position which approximates the new size of the window, and either pushing the button again or releasing the button after having held the button depressed throughout the entire operation.
While these movement and resizing submechanisms are helpful to computer system users, they have some inherent deficiencies. First, the submechanisms used are not standardized; therefore, users who are familiar with one windowing mechanism are often forced to change to make use of other windowing mechanisms. Second, in some situations these movement and resize operations are performed repeatedly throughout the day, which requires repeated mechanical muscle movement. As many studies have shown, individuals whose jobs require them to repeatedly perform mechanical muscle movement run a greater risk of contracting disabling conditions such as carpal tunnel syndrome.
Without a mechanism which allows computer users to manipulate viewable objects, while at the same time minimizing complexity and repeatable muscle movement, the benefits provided by windowing mechanisms remain limited.